﻿@{
    ViewBag.Title = "Details";
    Layout = "~/Views/Shared/_Layout.cshtml";
}
@model SmallJob.Model.MConversation
@{
    var displayorder = ViewData["displayorder"] as SmallJob.Model.Order;
    var userid = (int)ViewData["curuserid"];
    var ispayer = (userid == OrderHelper.GetPayerID(displayorder));
    var client = (Model.Person1ID == userid ? Model.User2 : Model.User1);
    var host = (Model.Person2ID == userid ? Model.User2 : Model.User1);
    var worker = (ispayer ? (Model.Person1ID == userid ? Model.User1 : Model.User2) : (Model.Person1ID == userid ? Model.User2 : Model.User1));
    var payer = (ispayer ? (Model.Person1ID == userid ? Model.User2 : Model.User1) : (Model.Person1ID == userid ? Model.User1 : Model.User2));
}
@using SmallShop.Services.Code;
<div class="service-detail">
    <div class="service-detail-container">
        <div class="row-fluid">
            <div class="span8 inbox-detail-box main-column">
                <div class="inner">
                    <h1>@(displayorder.Provide == null ? displayorder.Request.Title : displayorder.Provide.Title)</h1>
                </div>
                <div class="conversation-detail-inner-noscroll">
                    @foreach (var item in Model.Messages)
                    {
                        var sender = (item.SenderID == userid ? host : client);
                        <div class="conversation-message">
                            <div class="conversation-avatar pull-left">
                                <img src="@(string.IsNullOrWhiteSpace(sender.Avatar) ? Url.Content("~/Content/img/blank-avatar.jpg") : sender.Avatar)?w=32&h=32&q=90&format=jpg&mode=crop" />
                            </div>
                            <div class="conversation-body">
                                <p class="inbox-meta">
                                    <a class="inbox-sender" href="/@(string.IsNullOrWhiteSpace(sender.UserName) ? sender.ID.ToString() : sender.UserName)">@sender.Name</a>&nbsp;
                                    @if (item.Info != null)
                                    {
                                        if (item.Info.Type == (int)SmallJob.Model.EEmbedInfoType.Payment)
                                        { <span class="label label-important">@MessageHelper.GetStringSystemMessage(item.Info.Type)</span>  }
                                        else if (item.Info.Type == (int)SmallJob.Model.EEmbedInfoType.Rejected)
                                        { <span class="label label-warning">@MessageHelper.GetStringSystemMessage(item.Info.Type)</span>  }
                                        else
                                        { <span class="label label-success">@MessageHelper.GetStringSystemMessage(item.Info.Type)</span>  }
                                    }
                                    <span class="inbox-date">@string.Format("{0:t}", item.Date)</span>
                                </p>
                                <p class="inbox-message">
                                    @if (item.Info != null)
                                    {
                                        <strong>@item.Content</strong>
                                    }
                                    else
                                    {
                                        @item.Content
                                    }
                                </p>
                                @if (item.Info != null && item.Info.Type == (int)SmallJob.Model.EEmbedInfoType.Delivery && !string.IsNullOrWhiteSpace(item.Info.Download))
                                {
                                    if (item.Info.AllowDownload)
                                    {
                                    <p>

                                        <a class="btn btn-success" type="button" href="@item.Info.Download" target="_blank">Tải về</a>
                                    </p>
                                    }
                                    else
                                    {
                                    <p>Bạn cần thanh toán nốt số tiền đơn hàng để có thể download sản phẩm chính thức.</p>
                                        if (!string.IsNullOrWhiteSpace(item.Info.Demo))
                                        {
                                    <p><a class="btn btn-success" type="button" href="@item.Info.Demo" target="_blank">Xem Demo</a> </p>
                                        }
                                        if (ispayer)
                                        {
                                    <a class="btn btn-success" type="button" href="#" onclick="modalpaymentorder()">Thanh toán</a>
                                        }
                                    }
                                }
                            </div>
                        </div>
                    }
                    @if (displayorder.Status == (int)OrderStatusV2.Done)
                    {
                        <div class="conversation-message">
                            <p class="text-center"><span class="label label-success">Đơn hàng đã hoàn thành</span></p>
                        </div>
                    }
                    else if (displayorder.Status == (int)OrderStatusV2.Failed)
                    {
                        <div class="conversation-message">
                            <p class="text-center"><span class="label label-error">Đơn hàng thất bại</span></p>
                        </div>
                    }
                </div>
                <div class="reply-box">
                    <input type="hidden" id="reply-cvs-id" value="@Model.ShortID">
                    <form class="form-horizontal reply-form">
                        <textarea rows="3" class="span12" style="margin: 0px; width: 590px; height: 70px;"></textarea>
                        <input type="button" class="btn btn-primary conversation-send" id="reply-btn" value="Gửi"></input>
                    </form>
                </div>
            </div>
            <div class="span4 sidebar">
                @if (!displayorder.DisableDetails && displayorder.Status == (int)OrderStatusV2.WaitProgress)
                {
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="service-detail-creator">
                        <div class="span4inner">
                            <p class="text-center">
                                <button onclick="makeacceptorder()" class="btn btn-large btn-success @(ispayer ? "disabled" : "")" type="button">@(ispayer ? "Chờ xác nhận đơn hàng" : "Xác nhận đơn hàng")</button>
                            </p>
                            <div class="alert alert-info">
                                @(   ispayer ?
                                "Người cung cấp dịch vụ cần thêm thông tin để tiến hành công việc. Nếu sau 3 ngày không được xác nhận, đơn hàng sẽ bị hủy và bạn sẽ nhận lại 100% số tiền đã thanh toán." :
                                "Hãy yêu cầu người đặt dịch vụ đầy đủ thông tin cần thiết để tiến hành sau đó bấm nút Xác nhận đơn hàng. Nếu sau 3 ngày bạn không có đủ thông tin để bấm nút xác nhận, đơn hàng sẽ tự động được hủy."
                                )
                            </div>
                        </div>
                    </div>
                }
                else if (!displayorder.DisableDetails && displayorder.Status == (int)OrderStatusV2.InProgress)
                {
                    var remain = (DateTime)(displayorder.Deadline ?? DateTime.Now) - DateTime.Now;
                    var isover = (remain.TotalMinutes < 0);
                    if (isover) { remain = remain.Negate(); }
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="service-detail-creator">
                        <div class="span4inner">
                            <p class="text-center">
                                <button class="btn btn-large btn-success @(ispayer ? "disabled" : "")" type="button" onclick="callpopupdelivery()">@(ispayer ? "Chờ kết quả dịch vụ" : "Bàn giao dịch vụ")</button>
                            </p>
                            <p class="text-center"><strong>@(isover ? "Đã quá" : "") Thời hạn:</strong></p>
                            <p class="text-center"><span class="label @(isover ? "label-important" : "label-info")">@remain.Days ngày @remain.Hours giờ @remain.Minutes phút</span></p>
                            <div class="alert alert-error">
                                @(ispayer ?
                                MvcHtmlString.Create("Nếu quá thời hạn cam kết 3 ngày, đơn hàng sẽ bị hủy và bạn sẽ tự động <strong>được hoàn lại tiền</strong>.") :
                                  MvcHtmlString.Create("Nếu quá thời hạn cam kết 3 ngày, đơn hàng sẽ bị hủy và bạn sẽ tự động <strong>nhận đánh giá 1 sao</strong>."))
                            </div>
                        </div>
                    </div>
                }
                else if (!displayorder.DisableDetails && displayorder.Status == (int)OrderStatusV2.WaitDone)
                {
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="service-detail-creator">
                        <div class="span4inner">
                            <p class="text-center">
                                <button class="btn btn-large btn-success disabled" type="button">@(ispayer ? "Kết quả đã được bàn giao" : "Đã bàn giao")</button>
                            </p>
                            <div class="alert alert-info">
                                "Nếu sau 3 ngày không có khiếu nại hay từ chối kết quả, đơn hàng được xem như hoàn thành."
                            </div>
                            @if (ispayer)
                            {
                                <p class="text-center"><a href="#" onclick="makedoneorder()">Chấp nhận kết quả</a> - <a href="#" onclick="makerejectorder()">Từ chối</a></p>
                            }
                        </div>
                    </div>
                }
                else if (!displayorder.DisableDetails && displayorder.Status == (int)OrderStatusV2.Done)
                {
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="service-detail-creator">
                        <div class="span4inner">
                            <p class="text-center">
                                <button class="btn btn-large btn-primary disabled" type="button">Đã hoàn thành</button>
                            </p>
                        </div>
                    </div>
                    if (userid == OrderHelper.GetPayerID(displayorder))
                    {
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="">
                        <div class="span4inner">
                            @if (displayorder.Rate == null)
                            {
                                <p class="text-center">Dịch vụ đã hoàn thành. Mời bạn đánh giá dịch vụ.</p>
                                <div>
                                    <div class="text-center">
                                        <div class='rateit' id="rateit5"></div>
                                    </div>
                                    <div class="text-center">
                                        <span id="order-rate-value"></span>
                                    </div>
                                    <p class="text-center">
                                        <input type="button" class="btn btn-primary" value="Done" onclick="commitrate(this);" />
                                    </p>
                                </div>
                            }
                            else
                            {
                                <p class="text-center">Bạn đã đánh giá dịch vụ.</p>
                                <div class="text-center">
                                    <div class="text-center rateit" data-rateit-value="@displayorder.Rate" data-rateit-ispreset="true" data-rateit-readonly="true"></div>
                                </div>
                                <p></p>
                            }
                        </div>
                    </div>
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="">
                        <div class="span4inner">
                            @if (string.IsNullOrWhiteSpace(displayorder.Comment))
                            {
                                <p class="text-center">Dịch vụ đã hoàn thành. Mời bạn đánh giá dịch vụ.</p>
                                <div>
                                    <div class="text-center">
                                        <textarea placeholder="Ý kiến của bạn sau khi sử dụng dịch vụ." style="width: 90%; max-width: 90%;" id="order-comment-textarea"></textarea>
                                    </div>
                                    <p class="text-center">
                                        <input type="button" class="btn btn-primary" value="Done" onclick="commitcomment(this);" />
                                    </p>
                                </div>
                            }
                            else
                            {
                                <p class="text-center">Bạn đã đánh giá dịch vụ.</p>
                                <p class="text-center"><em>"@displayorder.Comment"</em></p>
                            }
                        </div>
                    </div>
                    }
                }
                else if (!displayorder.DisableDetails && displayorder.Status == (int)OrderStatusV2.Rejected)
                {
                    <div class="service-detail-box sidebar-block sidebar-block texture" style="padding-bottom: 0 !important" id="service-detail-creator">
                        <div class="span4inner">
                            <p class="text-center">
                                <button class="btn btn-large btn-warning disabled" type="button">@(ispayer ? "Chờ kết quả mới" : "Bị từ chối")</button>
                            </p>
                            <div class="alert alert-error">
                                @(ispayer ?
                                "Hãy trao đổi kỹ càng với người cung cấp dịch vụ để có kết quả tốt nhất." :
                                "Hãy trao đổi với người đặt hàng để biết lý do và bàn giao lại kết quả mới.")
                            </div>
                            @if (!ispayer)
                            {
                                <p class="text-center"><a href="#" onclick="callpopupdelivery()">Bàn giao lại</a>  </p>
                            }
                        </div>
                    </div>
                }
                <div class="service-detail-box sidebar-block" id="service-detail-creator1">
                    <div class="container-header">
                        Thông tin đơn hàng
                    </div>
                    <div class="user-avatar">
                        <img src="@(string.IsNullOrWhiteSpace(client.Avatar) ? Url.Content("~/Content/img/blank-avatar.jpg") : client.Avatar)" />
                    </div>
                    <h4 class="text-center">@client.Name</h4>
                    <p class="text-center">Đặt hàng: @displayorder.CreatedDate.ToString("dd/MM/yyyy hh:mm tt")</p>
                    <p class="text-center">
                        <button class="btn" type="button" onclick="modalcomplaintorder();">Khiếu nại</button>
                    </p>
                </div>
            </div>
        </div>
    </div>
</div>
@if (!ispayer && (displayorder.Status == (int)OrderStatusV2.InProgress || displayorder.Status == (int)OrderStatusV2.Rejected))
{
    <div class="modal hide fade" tabindex="-1" role="dialog" id="div-mess-box" aria-labelledby="myModalLabel" aria-hidden="true">
        <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
            <h3>Bàn giao kết quả cho @payer.UserName</h3>
        </div>
        <div class="modal-body">
            @using (Html.BeginForm("MakeDeliveryOrder", "Order", FormMethod.Post, new { id = "form-delivery-order", enctype = "multipart/form-data", onsubmit = "return validateform(this);", style = "z-index:1;" }))
            {
                        
                <p>Gửi tin nhắn đến người thuê.</p>
                <input type="hidden"  name="orderid" value="@displayorder.ID" />
                <textarea rows="3" name="linkresult" id="area-content" style="width: 515px; height: 120px"></textarea>
                <div id="group-delivery" class="control-group">
                    <div class="controls service-add-input">
                        <div class="input-prepend input-append">
                            <label class="checkbox">
                                <input type="checkbox" id="order-ckb-delivery" name="isdelivery" onchange="appendUpload();">
                                <label class="label label-info">Gửi sản phẩm hoàn thành</label>
                            </label>
                        </div>
                        <div class="upload-details" id="order-upload-details" style="display: none;">
                            <div id="order-display-upload" class="btn btn-primary" onclick="calluploadbtn()">Select Your File </div>
                            <div style="display: none;" class="btn btn-primary" onclick="removefile(this)">Remove </div>
                            <input type="file" name="file" style="display: none; position: absolute; top: -100px;" id="order-upload-btn" onchange="validatefile(this);" />
                        </div>
                        <span class="help-inline"></span>
                    </div>
                </div>
                if (displayorder.PaymentStatus != (int)SmallJob.Model.EPaymentStatus.Finish_Payment)
                {
                <div id="group-delivery-demo" class="control-group">
                    <div class="controls service-add-input">
                        <div class="input-prepend input-append">
                            <label class="checkbox">
                                <input type="checkbox" id="order-ckb-delivery-demo" name="isdeliverydemo" onchange="appendUpload();">
                                <label class="label label-info">Gửi Demo</label>
                            </label>
                        </div>
                        <div class="upload-details" id="order-upload-details-demo" style="display: none;">
                            <div id="order-display-upload-demo" class="btn btn-primary" onclick="calluploadbtndemo()">Select Your File </div>
                            <div style="display: none;" class="btn btn-primary" onclick="removefile(this)">Remove </div>
                            <input type="file" name="filedemo" style="display: none; position: absolute; top: -100px;" id="order-upload-btn-demo" onchange="validatefile(this);" />
                        </div>
                        <span class="help-inline"></span>
                    </div>
                </div>
                }
                else
                {
                <input type="hidden" name="linkdemo" value="" />
                }
                <input type="button" id="btn-submit-result" class="btn btn-primary" value="Bàn Giao" onclick="makedeliveryorder()" />
                <div id="div-loading" style="display: none; z-index: 999; background-color: white; opacity: 0.5;">
                    <img src="@Url.Content("~/Content/img/350.gif")" style="" />
                </div>
            }

        </div>
    </div>
}
<script type="text/javascript">
    var orderid = '@displayorder.ID';
    $(document).ready(function () {
        $('#rateit5').rateit({ max: 5, step: 1 });
        $('#rateit5').rateit('step', 1);
        $("#rateit5").bind('rated', function (event, value) { $('#order-rate-value').text('You\'ve rated it: ' + value); });
        $("#rateit5").bind('reset', function () { $('#order-rate-value').text('Rating reset'); });
    });
</script>
